package com.bit.ioc;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;

//@ComponentScan({"com.bit.ioc.service", "com.bit.ioc.component"})
@SpringBootApplication
public class DemoApplication {

	public static void main(String[] args) {
		ApplicationContext context = SpringApplication.run(DemoApplication.class, args);
		//适合该类型的对象只有一个
//		HelloController bean = context.getBean(HelloController.class);
//		bean.print();
//
//		HelloController helloController = new HelloController();
//		helloController.print();
//
//		HelloController bean2 = (HelloController) context.getBean("helloController");
//		bean2.print();
//
//		HelloController bean3 = context.getBean("helloController", HelloController.class);
//		bean3.print();

//		System.out.println(bean);
//		System.out.println(bean2);
//		System.out.println(bean3);

//		HelloController bean1 = (HelloController) context.getBean("helloController");
//		bean1.print();
//
//		HController bean5 = (HController) context.getBean("aaa");
//		bean5.print();
//
//
//
//		UserService bean = context.getBean(UserService.class);
//		bean.print();
//		UserRepository bean2 = context.getBean(UserRepository.class);
//		bean2.print();
//		UserComponent bean3 = context.getBean(UserComponent.class);
//		bean3.print();
//		UserConfig bean4 = context.getBean(UserConfig.class);
//		bean4.print();
//
//
//		//@Bean
//		Student bean = (Student) context.getBean("s3");
//		System.out.println(bean);
//
//		Student bean2 = (Student) context.getBean("s2");
//		System.out.println(bean2);

		//DI测试
//		HelloController bean = context.getBean(HelloController.class);
//		bean.print();

//		UserService bean = context.getBean(UserService.class);
//		bean.print();


	}

}
